﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.Serialization;
using System.ComponentModel;
using ViCode_LeVi.Data;

namespace ViCode_LeVi.Langs
{
    /// <summary>
    /// Phu trách viec ngôn ngữ
    /// </summary>
    [DataContract]
    public class ControlTextInfo : INotifyPropertyChanged
    {
        #region INotifyPropertyChanged Members
        public void SendPropertyChanged(string sProp)
        {
            if (PropertyChanged != null)
                PropertyChanged(this, new PropertyChangedEventArgs(sProp));
        }
        public void SendPropertyChanged()
        {
            var props = this.GetType().GetProperties();
            foreach (var prop in props)
            {
                SendPropertyChanged(prop.Name);
            }
        }
        public event PropertyChangedEventHandler PropertyChanged;

        #endregion
        static ControlTextInfo _Intance;
        public static ControlTextInfo Intance
        {
            get
            {
                if (_Intance == null)
                {
                    _Intance = LangManager.CreateDefault_VI();
                }
                return _Intance;
            }
            set
            {
                _Intance = value;
                if (_Intance != null)
                {
                    _Intance.SendPropertyChanged();
                }
            }
        }
        [DataMember]
        public string Application_Title { get; set; }
        [DataMember]
        public string Measure_Alert_Title { get; set; }
        [DataMember]
        public string Menu_Project { get; set; }
        [DataMember]
        public string Menu_Project_CreateNew { get; set; }
        [DataMember]
        public string Menu_Project_Open { get; set; }
        [DataMember]
        public string Menu_Project_Save { get; set; }
        [DataMember]
        public string Menu_Project_SaveAs { get; set; }
        [DataMember]
        public string Menu_Project_DesignMode { get; set; }
        [DataMember]
        public string Menu_Project_DesignRiskInfo { get; set; }
        [DataMember]
        public string Menu_Project_ModifyProjectInfo { get; set; }

        [DataMember]
        public string Menu_Operation { get; set; }
        [DataMember]
        public string Menu_Lang { get; set; }
        [DataMember]
        public string Menu_Lang_VI { get; set; }
        [DataMember]
        public string Menu_Lang_EN { get; set; }


        [DataMember]
        public string Dialog_File4Saving_Title { get; set; }


        [DataMember]
        public string Group_StepResult_Header { get; set; }

        [DataMember]
        public string TextBlock_Filter_Task_Text { get; set; }
        [DataMember]
        public string Button_Content_Detail { get; set; }
        [DataMember]
        public string Button_Content_OK { get; set; }
        [DataMember]
        public string Button_Content_Cancel { get; set; }

        [DataMember]
        public string ComboBox_ItemAll_Text { get; set; }

        [DataMember]
        public string RiskManagementItem_RiskNo_Text { get; set; }
        [DataMember]
        public string RiskManagementItem_Risk_Text { get; set; }
        [DataMember]
        public string RiskManagementItem_Impact_Text { get; set; }
        [DataMember]
        public string RiskManagementItem_Probability_Text { get; set; }
        [DataMember]
        public string RiskManagementItem_Manage_Text { get; set; }

        [DataMember]
        public string TaskItem_ID_Text { get; set; }
        [DataMember]
        public string TaskItem_Name_Text { get; set; }
        [DataMember]
        public string TaskItem_IsActive_Text { get; set; }
        [DataMember]
        public string TaskItem_Define_Text { get; set; }
        [DataMember]
        public string TaskItem_WeightText { get; set; }
        [DataMember]
        public string TaskItem_WeightReasonText { get; set; }
        [DataMember]
        public string TaskItem_Quantity_Text { get; set; }
        [DataMember]
        public string TaskItem_Quanlity_Text { get; set; }
        [DataMember]
        public string TaskItem_Systematic_Text { get; set; }
        [DataMember]
        public string TaskItem_Question_Text { get; set; }
        [DataMember]
        public string TaskItem_Anwser_Text { get; set; }
        [DataMember]
        public string TaskItem_ISTWeight_Percent_Text { get; set; }
        [DataMember]
        public string TaskItem_Evaluation_Text { get; set; }
        [DataMember]
        public string TaskItem_Control_Detail_Text { get; set; }

        [DataMember]
        public string Measurement_Title_Text { get; set; }
        [DataMember]
        public string Measurement_Start_Text { get; set; }
        [DataMember]
        public string Measurement_Duration_Text { get; set; }
        [DataMember]
        public string Measurement_Status_Text { get; set; }
        [DataMember]
        public string Measurement_ResponsiblePerson_Text { get; set; }
        [DataMember]
        public string Measurement_GoalOutCome_Text { get; set; }
        [DataMember]
        public string Measurement_Procedure_Text { get; set; }
        [DataMember]
        public string Measurement_Expenses_Text { get; set; }
        [DataMember]
        public string Measurement_ExpertedBenefits_Text { get; set; }

    }


    [DataContract]
    public class ControlTextInfoInData : INotifyPropertyChanged
    {
        #region INotifyPropertyChanged Members
        public void SendPropertyChanged(string sProp)
        {
            if (PropertyChanged != null)
                PropertyChanged(this, new PropertyChangedEventArgs(sProp));
        }
        public void SendPropertyChanged()
        {
            var props = this.GetType().GetProperties();
            foreach (var prop in props)
            {
                SendPropertyChanged(prop.Name);
            }
        }
        public event PropertyChangedEventHandler PropertyChanged;

        #endregion
        //static ControlTextInfoInData _Intance;
        public static ControlTextInfoInData Intance
        {
            get
            {
                //if (_Intance == null)
                //{
                    return ProjectData.Intance.ControlTextInfoInData;
                //}
                //return _Intance;
            }
            //set
            //{
            //    _Intance = value;
            //    if (_Intance != null)
            //    {
            //        _Intance.SendPropertyChanged();
            //    }
            //}
        }

        [DataMember]
        public string TextBlock_Filter_Task_Text { get; set; }
        [DataMember]
        public string Button_Content_Detail { get; set; }
        [DataMember]
        public string Button_Content_OK { get; set; }
        [DataMember]
        public string Button_Content_Cancel { get; set; }

        [DataMember]
        public string ComboBox_ItemAll_Text { get; set; }

        #region Group_StepResult_Header
        [DataMember]
        string _Group_StepResult_Header;
        public string Group_StepResult_Header
        {
            get
            {
                if (string.IsNullOrEmpty(_Group_StepResult_Header))
                    _Group_StepResult_Header = "Comment";
                return _Group_StepResult_Header;
            }
            set
            {
                if (_Group_StepResult_Header != value)
                {
                    _Group_StepResult_Header = value;
                    SendPropertyChanged("Group_StepResult_Header");
                }
            }
        }
        public string UI_Comment
        {
            get { return Group_StepResult_Header; }
            set { Group_StepResult_Header = value; }
        }
        public string UI_Comment_Dot
        {
            get { return UI_Comment + "..."; }
        }
        public string UI_Comments
        {
            get { return UI_Comment; }// +"s"; }
        }
        #endregion

        #region UI_STRATEGYFORMULATION
        [DataMember]
        string _UI_STRATEGYFORMULATION;
        public string UI_STRATEGYFORMULATION
        {
            get
            {
                return RootData.Intance.Report_BusinessStrategy;
                //if (string.IsNullOrEmpty(_UI_STRATEGYFORMULATION))
                //    _UI_STRATEGYFORMULATION = "STRATEGY FORMULATION";
                //return _UI_STRATEGYFORMULATION;
            }
            set
            {
                if (_UI_STRATEGYFORMULATION != value)
                {
                    _UI_STRATEGYFORMULATION = value;
                    SendPropertyChanged("UI_STRATEGYFORMULATION");
                }
            }
        }
        #endregion

        #region Analysis
        #region Analysis_Interpretation_Text
        [DataMember]
        string _Analysis_Interpretation_Text;        
        public string Analysis_Interpretation_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_Analysis_Interpretation_Text))
                    _Analysis_Interpretation_Text = "Interpretation:";
                return _Analysis_Interpretation_Text;
            }
            set
            {
                if (_Analysis_Interpretation_Text != value)
                {
                    _Analysis_Interpretation_Text = value;
                    SendPropertyChanged("Analysis_Interpretation_Text");
                }
            }
        }
        #endregion
        #endregion

        #region TaskItem
        #region TaskItem_ID_Text
        [DataMember]
        string _TaskItem_ID_Text;
        public string TaskItem_ID_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_TaskItem_ID_Text))
                    _TaskItem_ID_Text = "ID";
                return _TaskItem_ID_Text;
            }
            set
            {
                if (_TaskItem_ID_Text != value)
                {
                    _TaskItem_ID_Text = value;
                    SendPropertyChanged("TaskItem_ID_Text");
                }
            }
        }
        #endregion
        #region RiskManagementItem_RiskNo_Text
        [DataMember]
        string _RiskManagementItem_RiskNo_Text;
        public string RiskManagementItem_RiskNo_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_RiskManagementItem_RiskNo_Text))
                    _RiskManagementItem_RiskNo_Text = "No";
                return _RiskManagementItem_RiskNo_Text;
            }
            set
            {
                if (_RiskManagementItem_RiskNo_Text != value)
                {
                    _RiskManagementItem_RiskNo_Text = value;
                    SendPropertyChanged("RiskManagementItem_RiskNo_Text");
                }
            }
        }
        #endregion

        #region RiskManagementItem_Risk_Text
        [DataMember]
        string _RiskManagementItem_Risk_Text;
        public string RiskManagementItem_Risk_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_RiskManagementItem_Risk_Text))
                    _RiskManagementItem_Risk_Text = "Risk";
                return _RiskManagementItem_Risk_Text;
            }
            set
            {
                if (_RiskManagementItem_Risk_Text != value)
                {
                    _RiskManagementItem_Risk_Text = value;
                    SendPropertyChanged("RiskManagementItem_Risk_Text");
                }
            }
        }
        #endregion

        #region RiskManagementItem_Impact_Text
        [DataMember]
        string _RiskManagementItem_Impact_Text;
        public string RiskManagementItem_Impact_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_RiskManagementItem_Impact_Text))
                    _RiskManagementItem_Impact_Text = "Impact";
                return _RiskManagementItem_Impact_Text;
            }
            set
            {
                if (_RiskManagementItem_Impact_Text != value)
                {
                    _RiskManagementItem_Impact_Text = value;
                    SendPropertyChanged("RiskManagementItem_Impact_Text");
                }
            }
        }
        #endregion

        #region RiskManagementItem_Probability_Text
        [DataMember]
        string _RiskManagementItem_Probability_Text;
        public string RiskManagementItem_Probability_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_RiskManagementItem_Probability_Text))
                    _RiskManagementItem_Probability_Text = "Probability";
                return _RiskManagementItem_Probability_Text;
            }
            set
            {
                if (_RiskManagementItem_Probability_Text != value)
                {
                    _RiskManagementItem_Probability_Text = value;
                    SendPropertyChanged("RiskManagementItem_Probability_Text");
                }
            }
        }
        #endregion

        #region RiskManagementItem_Manage_Text
        [DataMember]
        string _RiskManagementItem_Manage_Text;
        public string RiskManagementItem_Manage_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_RiskManagementItem_Manage_Text))
                    _RiskManagementItem_Manage_Text = "Manage";
                return _RiskManagementItem_Manage_Text;
            }
            set
            {
                if (_RiskManagementItem_Manage_Text != value)
                {
                    _RiskManagementItem_Manage_Text = value;
                    SendPropertyChanged("RiskManagementItem_Manage_Text");
                }
            }
        }
        #endregion

        #region RiskManagement_EnumData_ID_Text
        [DataMember]
        string _RiskManagement_EnumData_ID_Text;
        public string RiskManagement_EnumData_ID_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_RiskManagement_EnumData_ID_Text))
                    _RiskManagement_EnumData_ID_Text = "Mark";
                return _RiskManagement_EnumData_ID_Text;
            }
            set
            {
                if (_RiskManagement_EnumData_ID_Text != value)
                {
                    _RiskManagement_EnumData_ID_Text = value;
                    SendPropertyChanged("RiskManagement_EnumData_ID_Text");
                }
            }
        }
        #endregion

        #region RiskManagement_EnumData_Name_Text
        [DataMember]
        string _RiskManagement_EnumData_Name_Text;
        public string RiskManagement_EnumData_Name_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_RiskManagement_EnumData_Name_Text))
                    _RiskManagement_EnumData_Name_Text = "Description";
                return _RiskManagement_EnumData_Name_Text;
            }
            set
            {
                if (_RiskManagement_EnumData_Name_Text != value)
                {
                    _RiskManagement_EnumData_Name_Text = value;
                    SendPropertyChanged("RiskManagement_EnumData_Name_Text");
                }
            }
        }
        #endregion

        #region Risk_Impact_Sort_Header
        [DataMember]
        string _Risk_Impact_Sort_Header;
        public string Risk_Impact_Sort_Header
        {
            get
            {
                if (string.IsNullOrEmpty(_Risk_Impact_Sort_Header))
                    _Risk_Impact_Sort_Header = "Edit Impact";
                return _Risk_Impact_Sort_Header;
            }
            set
            {
                if (_Risk_Impact_Sort_Header != value)
                {
                    _Risk_Impact_Sort_Header = value;
                    SendPropertyChanged("Risk_Impact_Sort_Header");
                }
            }
        }
        #endregion

        #region Risk_Impact_Full_Header
        [DataMember]
        string _Risk_Impact_Full_Header;
        public string Risk_Impact_Full_Header
        {
            get
            {
                if (string.IsNullOrEmpty(_Risk_Impact_Full_Header))
                    _Risk_Impact_Full_Header = "Edit description Impact";
                return _Risk_Impact_Full_Header;
            }
            set
            {
                if (_Risk_Impact_Full_Header != value)
                {
                    _Risk_Impact_Full_Header = value;
                    SendPropertyChanged("Risk_Impact_Full_Header");
                }
            }
        }
        #endregion

        #region Risk_Probability_Sort_Header
        [DataMember]
        string _Risk_Probability_Sort_Header;
        public string Risk_Probability_Sort_Header
        {
            get
            {
                if (string.IsNullOrEmpty(_Risk_Probability_Sort_Header))
                    _Risk_Probability_Sort_Header = "Edit Probability";
                return _Risk_Probability_Sort_Header;
            }
            set
            {
                if (_Risk_Probability_Sort_Header != value)
                {
                    _Risk_Probability_Sort_Header = value;
                    SendPropertyChanged("Risk_Probability_Sort_Header");
                }
            }
        }
        #endregion

        #region Risk_Probability_Full_Header
        [DataMember]
        string _Risk_Probability_Full_Header;
        public string Risk_Probability_Full_Header
        {
            get
            {
                if (string.IsNullOrEmpty(_Risk_Probability_Full_Header))
                    _Risk_Probability_Full_Header = "Edit description Probability";
                return _Risk_Probability_Full_Header;
            }
            set
            {
                if (_Risk_Probability_Full_Header != value)
                {
                    _Risk_Probability_Full_Header = value;
                    SendPropertyChanged("Risk_Probability_Full_Header");
                }
            }
        }
        #endregion

        #region Step_Budget_Name_Text
        [DataMember]
        string _Step_Budget_Name_Text;
        public string Step_Budget_Name_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_Step_Budget_Name_Text))
                    _Step_Budget_Name_Text = "Name: ";
                return _Step_Budget_Name_Text;
            }
            set
            {
                if (_Step_Budget_Name_Text != value)
                {
                    _Step_Budget_Name_Text = value;
                    SendPropertyChanged("Step_Budget_Name_Text");
                }
            }
        }
        #endregion

        #region Step_Budget_Cost_Text
        [DataMember]
        string _Step_Budget_Cost_Text;
        public string Step_Budget_Cost_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_Step_Budget_Cost_Text))
                    _Step_Budget_Cost_Text = "Cost: ";
                return _Step_Budget_Cost_Text;
            }
            set
            {
                if (_Step_Budget_Cost_Text != value)
                {
                    _Step_Budget_Cost_Text = value;
                    SendPropertyChanged("Step_Budget_Cost_Text");
                }
            }
        }
        #endregion

        #region Step_Budget_Total_Cost_Text
        [DataMember]
        string _Step_Budget_Total_Cost_Text;
        public string Step_Budget_Total_Cost_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_Step_Budget_Total_Cost_Text))
                    _Step_Budget_Total_Cost_Text = "  Total Cost: ";
                return _Step_Budget_Total_Cost_Text;
            }
            set
            {
                if (_Step_Budget_Total_Cost_Text != value)
                {
                    _Step_Budget_Total_Cost_Text = value;
                    SendPropertyChanged("Step_Budget_Total_Cost_Text");
                }
            }
        }
        #endregion
        #region Step_Budget_Note_Text
        [DataMember]
        string _Step_Budget_Note_Text;
        public string Step_Budget_Note_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_Step_Budget_Note_Text))
                    _Step_Budget_Note_Text = "Note";
                return _Step_Budget_Note_Text;
            }
            set
            {
                if (_Step_Budget_Note_Text != value)
                {
                    _Step_Budget_Note_Text = value;
                    SendPropertyChanged("Step_Budget_Note_Text");
                }
            }
        }
        #endregion
        #region TaskItem_Name_Text
        [DataMember]
        string _TaskItem_Name_Text;
        public string TaskItem_Name_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_TaskItem_Name_Text))
                    _TaskItem_Name_Text = "Title";
                return _TaskItem_Name_Text;
            }
            set
            {
                if (_TaskItem_Name_Text != value)
                {
                    _TaskItem_Name_Text = value;
                    SendPropertyChanged("TaskItem_Name_Text");
                }
            }
        }
        #endregion

        #region TaskItem_IsActive_Text
        [DataMember]
        string _TaskItem_IsActive_Text;
        public string TaskItem_IsActive_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_TaskItem_IsActive_Text))
                    _TaskItem_IsActive_Text = "Active";
                return _TaskItem_IsActive_Text;
            }
            set
            {
                if (_TaskItem_IsActive_Text != value)
                {
                    _TaskItem_IsActive_Text = value;
                    SendPropertyChanged("TaskItem_IsActive_Text");
                }
            }
        }
        #endregion

        #region TaskItem_Define_Text
        [DataMember]
        string _TaskItem_Define_Text;
        public string TaskItem_Define_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_TaskItem_Define_Text))
                    _TaskItem_Define_Text = "Defination";
                return _TaskItem_Define_Text;
            }
            set
            {
                if (_TaskItem_Define_Text != value)
                {
                    _TaskItem_Define_Text = value;
                    SendPropertyChanged("TaskItem_Define_Text");
                }
            }
        }
        #endregion

        #region TaskItem_WeightText
        [DataMember]
        string _TaskItem_WeightText;
        public string TaskItem_WeightText
        {
            get
            {
                if (string.IsNullOrEmpty(_TaskItem_WeightText))
                    _TaskItem_WeightText = "Weight";
                return _TaskItem_WeightText;
            }
            set
            {
                if (_TaskItem_WeightText != value)
                {
                    _TaskItem_WeightText = value;
                    SendPropertyChanged("TaskItem_WeightText");
                }
            }
        }
        #endregion

        #region TaskItem_WeightReasonText
        [DataMember]
        string _TaskItem_WeightReasonText;
        public string TaskItem_WeightReasonText
        {
            get
            {
                if (string.IsNullOrEmpty(_TaskItem_WeightReasonText))
                    _TaskItem_WeightReasonText = "Reason of Weight";
                return _TaskItem_WeightReasonText;
            }
            set
            {
                if (_TaskItem_WeightReasonText != value)
                {
                    _TaskItem_WeightReasonText = value;
                    SendPropertyChanged("TaskItem_WeightReasonText");
                }
            }
        }
        #endregion

        #region TaskItem_Quantity_Text
        [DataMember]
        string _TaskItem_Quantity_Text;
        public string TaskItem_Quantity_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_TaskItem_Quantity_Text))
                    _TaskItem_Quantity_Text = "Quantity(in %)";
                return _TaskItem_Quantity_Text;
            }
            set
            {
                if (_TaskItem_Quantity_Text != value)
                {
                    _TaskItem_Quantity_Text = value;
                    SendPropertyChanged("TaskItem_Quantity_Text");
                }
            }
        }
        #endregion

        #region TaskItem_Quanlity_Text
        [DataMember]
        string _TaskItem_Quanlity_Text;
        public string TaskItem_Quanlity_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_TaskItem_Quanlity_Text))
                    _TaskItem_Quanlity_Text = "Quanlity(in %)";
                return _TaskItem_Quanlity_Text;
            }
            set
            {
                if (_TaskItem_Quanlity_Text != value)
                {
                    _TaskItem_Quanlity_Text = value;
                    SendPropertyChanged("TaskItem_Quanlity_Text");
                }
            }
        }
        #endregion

        #region TaskItem_Systematic_Text
        [DataMember]
        string _TaskItem_Systematic_Text;
        public string TaskItem_Systematic_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_TaskItem_Systematic_Text))
                    _TaskItem_Systematic_Text = "Systematic(in %)";
                return _TaskItem_Systematic_Text;
            }
            set
            {
                if (_TaskItem_Systematic_Text != value)
                {
                    _TaskItem_Systematic_Text = value;
                    SendPropertyChanged("TaskItem_Systematic_Text");
                }
            }
        }
        #endregion

        #region TaskItem_Question_Text
        [DataMember]
        string _TaskItem_Question_Text;
        public string TaskItem_Question_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_TaskItem_Question_Text))
                    _TaskItem_Question_Text = "Question";
                return _TaskItem_Question_Text;
            }
            set
            {
                if (_TaskItem_Question_Text != value)
                {
                    _TaskItem_Question_Text = value;
                    SendPropertyChanged("TaskItem_Question_Text");
                }
            }
        }
        #endregion

        #region TaskItem_Anwser_Text
        [DataMember]
        string _TaskItem_Anwser_Text;
        public string TaskItem_Anwser_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_TaskItem_Anwser_Text))
                    _TaskItem_Anwser_Text = "Anwser";
                return _TaskItem_Anwser_Text;
            }
            set
            {
                if (_TaskItem_Anwser_Text != value)
                {
                    _TaskItem_Anwser_Text = value;
                    SendPropertyChanged("TaskItem_Anwser_Text");
                }
            }
        }
        #endregion

        #region TaskItem_ISTWeight_Percent_Text
        [DataMember]
        string _TaskItem_ISTWeight_Percent_Text;
        public string TaskItem_ISTWeight_Percent_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_TaskItem_ISTWeight_Percent_Text))
                    _TaskItem_ISTWeight_Percent_Text = "IST Weight %";
                return _TaskItem_ISTWeight_Percent_Text;
            }
            set
            {
                if (_TaskItem_ISTWeight_Percent_Text != value)
                {
                    _TaskItem_ISTWeight_Percent_Text = value;
                    SendPropertyChanged("TaskItem_ISTWeight_Percent_Text");
                }
            }
        }
        #endregion

        #region TaskItem_Evaluation_Text
        [DataMember]
        string _TaskItem_Evaluation_Text;
        public string TaskItem_Evaluation_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_TaskItem_Evaluation_Text))
                    _TaskItem_Evaluation_Text = "Evaluation";
                return _TaskItem_Evaluation_Text;
            }
            set
            {
                if (_TaskItem_Evaluation_Text != value)
                {
                    _TaskItem_Evaluation_Text = value;
                    SendPropertyChanged("TaskItem_Evaluation_Text");
                }
            }
        }
        #endregion

        #region TaskItem_Control_Detail_Text
        [DataMember]
        string _TaskItem_Control_Detail_Text;
        public string TaskItem_Control_Detail_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_TaskItem_Control_Detail_Text))
                    _TaskItem_Control_Detail_Text = "Control_Detail";
                return _TaskItem_Control_Detail_Text;
            }
            set
            {
                if (_TaskItem_Control_Detail_Text != value)
                {
                    _TaskItem_Control_Detail_Text = value;
                    SendPropertyChanged("TaskItem_Control_Detail_Text");
                }
            }
        }
        #endregion
        #endregion

        #region Measurement
        #region Measurement_Title_Text
        [DataMember]
        string _Measurement_Title_Text;
        public string Measurement_Title_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_Measurement_Title_Text))
                    _Measurement_Title_Text = "Title";
                return _Measurement_Title_Text;
            }
            set
            {
                if (_Measurement_Title_Text != value)
                {
                    _Measurement_Title_Text = value;
                    SendPropertyChanged("Measurement_Title_Text");
                }
            }
        }
        #endregion

        #region Measurement_Start_Text
        [DataMember]
        string _Measurement_Start_Text;
        public string Measurement_Start_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_Measurement_Start_Text))
                    _Measurement_Start_Text = "Start";
                return _Measurement_Start_Text;
            }
            set
            {
                if (_Measurement_Start_Text != value)
                {
                    _Measurement_Start_Text = value;
                    SendPropertyChanged("Measurement_Start_Text");
                }
            }
        }
        #endregion

        #region Measurement_End_Text
        [DataMember]
        string _Measurement_End_Text;
        public string Measurement_End_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_Measurement_End_Text))
                    _Measurement_End_Text = "End";
                return _Measurement_End_Text;
            }
            set
            {
                if (_Measurement_End_Text != value)
                {
                    _Measurement_End_Text = value;
                    SendPropertyChanged("Measurement_End_Text");
                }
            }
        }
        #endregion

        #region Measurement_ResponsiblePerson_Text
        [DataMember]
        string _Measurement_ResponsiblePerson_Text;
        public string Measurement_ResponsiblePerson_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_Measurement_ResponsiblePerson_Text))
                    _Measurement_ResponsiblePerson_Text = "Responsible Person";
                return _Measurement_ResponsiblePerson_Text;
            }
            set
            {
                if (_Measurement_ResponsiblePerson_Text != value)
                {
                    _Measurement_ResponsiblePerson_Text = value;
                    SendPropertyChanged("Measurement_ResponsiblePerson_Text");
                }
            }
        }
        #endregion

        #region Measurement_Duration_Text
        [DataMember]
        string _Measurement_Duration_Text;
        public string Measurement_Duration_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_Measurement_Duration_Text))
                    _Measurement_Duration_Text = "Duration";
                return _Measurement_Duration_Text;
            }
            set
            {
                if (_Measurement_Duration_Text != value)
                {
                    _Measurement_Duration_Text = value;
                    SendPropertyChanged("Measurement_Duration_Text");
                }
            }
        }
        #endregion

        #region Measurement_DaysRemaining_Text
        [DataMember]
        string _Measurement_DaysRemaining_Text;
        public string Measurement_DaysRemaining_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_Measurement_DaysRemaining_Text))
                    _Measurement_DaysRemaining_Text = "Remain";
                return _Measurement_DaysRemaining_Text;
            }
            set
            {
                if (_Measurement_DaysRemaining_Text != value)
                {
                    _Measurement_DaysRemaining_Text = value;
                    SendPropertyChanged("Measurement_DaysRemaining_Text");
                }
            }
        }
        #endregion

        #region Measurement_Status_Text
        [DataMember]
        string _Measurement_Status_Text;
        public string Measurement_Status_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_Measurement_Status_Text))
                    _Measurement_Status_Text = "Status";
                return _Measurement_Status_Text;
            }
            set
            {
                if (_Measurement_Status_Text != value)
                {
                    _Measurement_Status_Text = value;
                    SendPropertyChanged("Measurement_Status_Text");
                }
            }
        }
        #endregion

        #region Measurement_GoalOutCome_Text
        [DataMember]
        string _Measurement_GoalOutCome_Text;
        public string Measurement_GoalOutCome_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_Measurement_GoalOutCome_Text))
                    _Measurement_GoalOutCome_Text = "Goal / outcome";
                return _Measurement_GoalOutCome_Text;
            }
            set
            {
                if (_Measurement_GoalOutCome_Text != value)
                {
                    _Measurement_GoalOutCome_Text = value;
                    SendPropertyChanged("Measurement_GoalOutCome_Text");
                }
            }
        }
        public string Measurement_GoalOutCome_Text_Dot
        {
            get { return Measurement_GoalOutCome_Text + "..."; }
        }
        #endregion

        #region Measurement_Procedure_Text
        [DataMember]
        string _Measurement_Procedure_Text;
        public string Measurement_Procedure_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_Measurement_Procedure_Text))
                    _Measurement_Procedure_Text = "Procedure";
                return _Measurement_Procedure_Text;
            }
            set
            {
                if (_Measurement_Procedure_Text != value)
                {
                    _Measurement_Procedure_Text = value;
                    SendPropertyChanged("Measurement_Procedure_Text");
                }
            }
        }
        public string Measurement_Procedure_Text_Dot
        {
            get
            {
                return Measurement_Procedure_Text + "...";
            }
        }
        #endregion

        #region Measurement_Expenses_Text
        [DataMember]
        string _Measurement_Expenses_Text;
        public string Measurement_Expenses_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_Measurement_Expenses_Text))
                    _Measurement_Expenses_Text = "Expenses\nInvestment volume";
                return _Measurement_Expenses_Text;
            }
            set
            {
                if (_Measurement_Expenses_Text != value)
                {
                    _Measurement_Expenses_Text = value;
                    SendPropertyChanged("Measurement_Expenses_Text");
                }
            }
        }
        #endregion

        #region Measurement_ExpertedBenefits_Text
        [DataMember]
        string _Measurement_ExpertedBenefits_Text;
        public string Measurement_ExpertedBenefits_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_Measurement_ExpertedBenefits_Text))
                    _Measurement_ExpertedBenefits_Text = "Expected benefits";
                return _Measurement_ExpertedBenefits_Text;
            }
            set
            {
                if (_Measurement_ExpertedBenefits_Text != value)
                {
                    _Measurement_ExpertedBenefits_Text = value;
                    SendPropertyChanged("Measurement_ExpertedBenefits_Text");
                }
            }
        }
        #endregion
        #endregion

        #region Evaluation_Chart
        #region Evaluation_Chart_Option_Text
        [DataMember]
        string _Evaluation_Chart_Option_Text;
        public string Evaluation_Chart_Option_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_Evaluation_Chart_Option_Text))
                    _Evaluation_Chart_Option_Text = "Option";
                return _Evaluation_Chart_Option_Text;
            }
            set
            {
                if (_Evaluation_Chart_Option_Text != value)
                {
                    _Evaluation_Chart_Option_Text = value;
                    SendPropertyChanged("Evaluation_Chart_Option_Text");
                }
            }
        }
        #endregion

        #region Evaluation_Chart_DisplayChart_Text
        [DataMember]
        string _Evaluation_Chart_DisplayChart_Text;
        public string Evaluation_Chart_DisplayChart_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_Evaluation_Chart_DisplayChart_Text))
                    _Evaluation_Chart_DisplayChart_Text = "Display Chart";
                return _Evaluation_Chart_DisplayChart_Text;
            }
            set
            {
                if (_Evaluation_Chart_DisplayChart_Text != value)
                {
                    _Evaluation_Chart_DisplayChart_Text = value;
                    SendPropertyChanged("Evaluation_Chart_DisplayChart_Text");
                }
            }
        }
        #endregion

        #region Evaluation_Chart_ColumnDisplay_Text
        [DataMember]
        string _Evaluation_Chart_ColumnDisplay_Text;
        public string Evaluation_Chart_ColumnDisplay_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_Evaluation_Chart_ColumnDisplay_Text))
                    _Evaluation_Chart_ColumnDisplay_Text = "Column Display";
                return _Evaluation_Chart_ColumnDisplay_Text;
            }
            set
            {
                if (_Evaluation_Chart_ColumnDisplay_Text != value)
                {
                    _Evaluation_Chart_ColumnDisplay_Text = value;
                    SendPropertyChanged("Evaluation_Chart_ColumnDisplay_Text");
                }
            }
        }
        #endregion

        #region Evaluation_Chart_ColumnInfomation_Text
        [DataMember]
        string _Evaluation_Chart_ColumnInfomation_Text;
        public string Evaluation_Chart_ColumnInfomation_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_Evaluation_Chart_ColumnInfomation_Text))
                    _Evaluation_Chart_ColumnInfomation_Text = "ColumnInfomation";
                return _Evaluation_Chart_ColumnInfomation_Text;
            }
            set
            {
                if (_Evaluation_Chart_ColumnInfomation_Text != value)
                {
                    _Evaluation_Chart_ColumnInfomation_Text = value;
                    SendPropertyChanged("Evaluation_Chart_ColumnInfomation_Text");
                }
            }
        }
        #endregion

        #region Evaluation_Chart_Legend_Text
        [DataMember]
        string _Evaluation_Chart_Legend_Text;
        public string Evaluation_Chart_Legend_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_Evaluation_Chart_Legend_Text))
                    _Evaluation_Chart_Legend_Text = "Legend";
                return _Evaluation_Chart_Legend_Text;
            }
            set
            {
                if (_Evaluation_Chart_Legend_Text != value)
                {
                    _Evaluation_Chart_Legend_Text = value;
                    SendPropertyChanged("Evaluation_Chart_Legend_Text");
                }
            }
        }
        #endregion

        #region Evaluation_Chart_LegendWithPercent_Text
        [DataMember]
        string _Evaluation_Chart_LegendWithPercent_Text;
        public string Evaluation_Chart_LegendWithPercent_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_Evaluation_Chart_LegendWithPercent_Text))
                    _Evaluation_Chart_LegendWithPercent_Text = "Legend With Percent";
                return _Evaluation_Chart_LegendWithPercent_Text;
            }
            set
            {
                if (_Evaluation_Chart_LegendWithPercent_Text != value)
                {
                    _Evaluation_Chart_LegendWithPercent_Text = value;
                    SendPropertyChanged("Evaluation_Chart_LegendWithPercent_Text");
                }
            }
        }
        #endregion

        #region Evaluation_Chart_Alignment_Text
        [DataMember]
        string _Evaluation_Chart_Alignment_Text;
        public string Evaluation_Chart_Alignment_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_Evaluation_Chart_Alignment_Text))
                    _Evaluation_Chart_Alignment_Text = "Alignment";
                return _Evaluation_Chart_Alignment_Text;
            }
            set
            {
                if (_Evaluation_Chart_Alignment_Text != value)
                {
                    _Evaluation_Chart_Alignment_Text = value;
                    SendPropertyChanged("Evaluation_Chart_Alignment_Text");
                }
            }
        }
        #endregion

        #region Evaluation_Chart_AutoZoom_Text
        [DataMember]
        string _Evaluation_Chart_AutoZoom_Text;
        public string Evaluation_Chart_AutoZoom_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_Evaluation_Chart_AutoZoom_Text))
                    _Evaluation_Chart_AutoZoom_Text = "Auto Zoom";
                return _Evaluation_Chart_AutoZoom_Text;
            }
            set
            {
                if (_Evaluation_Chart_AutoZoom_Text != value)
                {
                    _Evaluation_Chart_AutoZoom_Text = value;
                    SendPropertyChanged("Evaluation_Chart_AutoZoom_Text");
                }
            }
        }
        #endregion
        #endregion

        #region eImportanceMode
        #region eImportanceMode_Absolute_Text
        [DataMember]
        string _eImportanceMode_Absolute_Text;
        public string eImportanceMode_Absolute_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_eImportanceMode_Absolute_Text))
                    _eImportanceMode_Absolute_Text = "Absolute";
                return _eImportanceMode_Absolute_Text;
            }
            set
            {
                if (_eImportanceMode_Absolute_Text != value)
                {
                    _eImportanceMode_Absolute_Text = value;
                    SendPropertyChanged("eImportanceMode_Absolute_Text");
                }
            }
        }
        #endregion

        #region eImportanceMode_Relativ_Text
        [DataMember]
        string _eImportanceMode_Relativ_Text;
        public string eImportanceMode_Relativ_Text
        {
            get
            {
                if (string.IsNullOrEmpty(_eImportanceMode_Relativ_Text))
                    _eImportanceMode_Relativ_Text = "Relativ";
                return _eImportanceMode_Relativ_Text;
            }
            set
            {
                if (_eImportanceMode_Relativ_Text != value)
                {
                    _eImportanceMode_Relativ_Text = value;
                    SendPropertyChanged("eImportanceMode_Relativ_Text");
                }
            }
        }
        #endregion
        #endregion
    }
}
